package com.stoken.domain;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
public class MemberExtractList implements Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY) 
	private long id;
	
	@ManyToOne
	@JoinColumn(name="base_username",nullable=false)
	private MemberBaseInfo baseUsername;
	
	@Column(length=16,nullable=false)
	private String baseName;
	
	@Column(nullable=false)
	@Temporal(TemporalType.TIMESTAMP)
	private Date extractApplyTime;
	
	@Column(nullable=false)
	private double extractAmount;
	
	@Column(nullable=false)
	private double extractAmountRmb;
	
	@Column(nullable=false)
	private double extractHaddingfee;
	
	@Column(nullable=false)
	private double extractAmountFact;
	
	@Column(nullable=false)
	private String extractSubbranch;
	
	@Column(nullable=false)
	private String extractAccount;
	
	/**
	 * 0-未处理
	 * 1-处理成功
	 * 2-处理失败
	 */
	private int extractState;
	

	@Temporal(TemporalType.TIMESTAMP)
	private Date extractTime;
	
	@Column(nullable=false)
	private double walletRemain;
	
	private String extractRemark;
	
	private String extractSpare;

	public long getId() {
		return id;
	}

	public void setId(long id) {
		this.id = id;
	}

	public MemberBaseInfo getBaseUsername() {
		return baseUsername;
	}

	public void setBaseUsername(MemberBaseInfo baseUsername) {
		this.baseUsername = baseUsername;
	}

	public String getBaseName() {
		return baseName;
	}

	public void setBaseName(String baseName) {
		this.baseName = baseName;
	}

	public Date getExtractApplyTime() {
		return extractApplyTime;
	}

	public void setExtractApplyTime(Date extractApplyTime) {
		this.extractApplyTime = extractApplyTime;
	}

	public double getExtractAmount() {
		return extractAmount;
	}

	public void setExtractAmount(double extractAmount) {
		this.extractAmount = extractAmount;
	}

	public double getExtractAmountRmb() {
		return extractAmountRmb;
	}

	public void setExtractAmountRmb(double extractAmountRmb) {
		this.extractAmountRmb = extractAmountRmb;
	}

	public double getExtractHaddingfee() {
		return extractHaddingfee;
	}

	public void setExtractHaddingfee(double extractHaddingfee) {
		this.extractHaddingfee = extractHaddingfee;
	}

	public double getExtractAmountFact() {
		return extractAmountFact;
	}

	public void setExtractAmountFact(double extractAmountFact) {
		this.extractAmountFact = extractAmountFact;
	}

	public String getExtractSubbranch() {
		return extractSubbranch;
	}

	public void setExtractSubbranch(String extractSubbranch) {
		this.extractSubbranch = extractSubbranch;
	}

	public String getExtractAccount() {
		return extractAccount;
	}

	public void setExtractAccount(String extractAccount) {
		this.extractAccount = extractAccount;
	}

	public int getExtractState() {
		return extractState;
	}

	public void setExtractState(int extractState) {
		this.extractState = extractState;
	}

	public Date getExtractTime() {
		return extractTime;
	}

	public void setExtractTime(Date extractTime) {
		this.extractTime = extractTime;
	}

	public double getWalletRemain() {
		return walletRemain;
	}

	public void setWalletRemain(double walletRemain) {
		this.walletRemain = walletRemain;
	}

	public String getExtractRemark() {
		return extractRemark;
	}

	public void setExtractRemark(String extractRemark) {
		this.extractRemark = extractRemark;
	}

	public String getExtractSpare() {
		return extractSpare;
	}

	public void setExtractSpare(String extractSpare) {
		this.extractSpare = extractSpare;
	}
	
	
}
